package tpN1.ejercicioN9;

import java.util.ArrayList;

public abstract class Memoria {
	
	private ArrayList<String> almacenamiento = new ArrayList<String>();
	private int direcciones;
	private int memDisponible;
	private int memUtilizada;
	
	public Memoria(int tamanio, int manejoBits){
		manejoBits = (manejoBits > 0) ? manejoBits : 1;
		this.direcciones = (tamanio * 1024) / manejoBits;
	}
	
	public int memDisponible(){
		this.memDisponible = direcciones - almacenamiento.size();
		return this.memDisponible;
	}	
	public int memUtilizada(){
		this.memUtilizada = almacenamiento.size();
		return this.memUtilizada;
	}
	public void agregarEnLaLista(){
		this.almacenamiento.add(null);
	}
	public void quitarDeLaLista(){
		this.almacenamiento.remove(almacenamiento.size() - 1);
	}
	
	public abstract void guardarDatos();
	
	public abstract void borrarDatos();
}
